package com.quickd.service.dto.wms;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.quickd.core.annotation.DictAno;
import com.quickd.core.dto.BaseDto;
import com.quickd.service.entity.wms.FormDetail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * 单据
 *
 * @author quickd quickd@dacanginfo.com
 * @since 2019-10-07
 */
@Data
@ApiModel(value = "单据")
public class FormDTO extends BaseDto {

    @ApiModelProperty(value = "单据类型（0入库、1出库、2移库、3盘点）")
    @DictAno(dicCode = "form_type")
    @Excel(name = "单据类型")
    private Integer type;

    @ApiModelProperty(value = "作业人")
    @Excel(name = "作业人")
    private String worker;

    @ApiModelProperty(value = "业务发生时间")
    @Excel(name = "业务发生时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date optime;

    @ApiModelProperty(value = "入库仓库")
    @Excel(name = "入库仓库")
    private String inStorage;

    @ApiModelProperty(value = "出库仓库")
    @Excel(name = "出库仓库")
    private String outStorage;

    @ApiModelProperty(value = "盘点仓库")
    @Excel(name = "盘点仓库")
    private String miStorage;

    @ApiModelProperty(value = "供应商/客户")
    @Excel(name = "供应商/客户")
    private String customer;

    @ApiModelProperty(value = "状态")
    @DictAno(dicCode = "form_status")
    @Excel(name = "状态")
    private Integer status;

    @ApiModelProperty(value = "操作人")
    @Excel(name = "操作人")
    private String operator;

    private List<FormDetail> dataDetailList;
}